from prettytable import PrettyTable

# 定义表头
header = ["id", "名称", "简介"]

# 定义项目数据，使用字典
projects = {
    "101": {
        "名称": "嫦娥三号探测器",
        "简介": "嫦娥工程的第三个月球探测器，在月球表面进行软着陆",
    },
    "102": {
        "名称": "玉兔号月球车",
        "简介": "由嫦娥三号送达月球表面进行探测，它的着陆点被命名为广寒宫",
    },
    "103": {
        "名称": "鹊桥卫星",
        "简介": "嫦娥四号探测器的中继卫星，为着陆器和月球车提供地月中继通信支持",
    },
    "104": {"名称": "天问一号", "简介": "火星探测器，实现了火星软着陆"},
    "105": {"名称": "祝融号火星车", "简介": "由天问一号送达火星表面进行探测"},
    "106": {
        "名称": "夸父计划",
        "简介": "全天候监测太阳活动的发生及其伴生现象，由三颗卫星组成",
    },
    "107": {
        "名称": "天宫空间站",
        "简介": "包含天和核心舱、梦天实验舱、问天实验舱、神舟载人飞船和天舟货运飞船",
    },
    "108": {
        "名称": "长征系列运载火箭",
        "简介": "长征火箭已经拥有退役、现役共计4代20种型号",
    },
    "109": {
        "名称": "悟空号卫星",
        "简介": "世界上观测能段范围最宽、能量分辨率最优的暗物质粒子探测卫星",
    },
    "110": {"名称": "墨子号卫星", "简介": "世界上第一颗空间量子科学实验卫星"},
    "111": {"名称": "北斗卫星导航系统", "简介": "中国自行研制的全球卫星导航系统"},
}


# 函数：显示所有项目信息，使用PrettyTable模块生成表格并打印输出。
def show_projects():
    print("显示所有项目信息")


# 函数：添加新项目到列表中，通过用户输入获取项目信息。
def add_project():
    print("添加新项目")


# 函数：更新项目信息，修改指定项目ID的项目简介。
def update_project():
    print("更新项目")


# 函数：根据项目ID删除指定项目。
def delete_project():
    print("删除项目")


# 函数：根据用户输入的关键词搜索项目信息，并用表格形式显示结果。
def search_project():
    print("用关键字查找项目")


# 主程序：提供用户交互界面，循环处理用户选择的操作。
def main():
    while True:
        # 主菜单循环，显示选项并处理用户输入
        print("[1]: 显示所有项目信息")
        print("[2]: 用关键字查找项目")
        print("[3]: 添加新项目")
        print("[4]: 更新项目信息")
        print("[5]: 删除项目")
        print("[Q]: 退出")
        choice = input("请输入选项: ")
        if choice == "1":
            show_projects()
        elif choice == "2":
            search_project()
        elif choice == "3":
            add_project()
        elif choice == "4":
            update_project()
        elif choice == "5":
            delete_project()
        elif choice.lower() == "q":
            print("退出系统")
            break
        else:
            print("无效输入，请重新输入")


if __name__ == "__main__":
    main()
